;(async function () {
  // 搭建express服务

  // 要先知道数据库是否连接成功,如果成功了,再启动express服务,如果没有连接成功,则express服务不启动
  // 引入连接数据库的代码,那么连接数据库的代码就会执行
  const connect = require('./db/connect')

  // 引入model
  const model = require('./db/model')

  // 数据库连接成功之后,搭建express服务
  const express = require('express')

  try {
    await connect
    console.log('数据库连接成功')
  } catch (error) {
    console.log('数据库连接失败')
    return
  }

  // 创建应用对象
  const app = express()

  // 配置处理post请求,解析请求主体数据的内置中间件
  app.use(express.urlencoded({ extended: false }))

  // 配置路由
  app.get('/getGoods', async (req, res) => {
    // 去数据库中查询goods数据
    const goods = await model.find()
    // 响应查询到的数据给浏览器
    res.send(goods)
  })

  app.listen(5000, (err) => {
    if (err) console.log('服务器启动失败')
    else console.log('服务器启动成功')
  })
})()
